4
תגובות
שלום,
יש לי את הקוד הבא:
וכאשר אני ניגש לדף אני מקבל את השגיאה הבאה:
Errormessage: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ' `password` = '*******************'' at line 1
לא הבנתי מה הבעיה ! תוכלו לעזור לי?
יש לי את הקוד הבא:
<?php
if(isset($_POST['login'])) {
$pass = md5($_POST['password']);
$user = $_POST['username'];
$take = $database->query("SELECT * FROM `users` WHERE `username` = '{$user}', `password` = '{$pass}'");
if($take->num_rows == "1")
{
setcookie('username',$username,time()+30);
setcookie('password',$password,time()+30);
$_COOKIE['username'] = $username;
$_COOKIE['password'] = $password;
echo "התחברתה בהצלחה !";
}
else {
printf("Errormessage: %s\n", $database->error);
}
}
?>
if(isset($_POST['login'])) {
$pass = md5($_POST['password']);
$user = $_POST['username'];
$take = $database->query("SELECT * FROM `users` WHERE `username` = '{$user}', `password` = '{$pass}'");
if($take->num_rows == "1")
{
setcookie('username',$username,time()+30);
setcookie('password',$password,time()+30);
$_COOKIE['username'] = $username;
$_COOKIE['password'] = $password;
echo "התחברתה בהצלחה !";
}
else {
printf("Errormessage: %s\n", $database->error);
}
}
?>
וכאשר אני ניגש לדף אני מקבל את השגיאה הבאה:
Errormessage: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ' `password` = '*******************'' at line 1
לא הבנתי מה הבעיה ! תוכלו לעזור לי?
4 תשובות
if($take->num_rows == "1")
ה 1 לא אמור להיות בגרש, זה אמור להיות ככה:
if($take->num_rows == 1)
לגבי כל הקוקיז, תקרא את המדריך של אלכס על קוקיז, ואת ההמשך שלו על הסשנים.
ואתה לא צריך לשמור בכלל בעוגיה את הסיסמא, מספיק השם משתמש, ואז לפי השם משתמש אתה בודק אם המשתמש מחובר (בכך שהסשן\עוגיה קיים) ואם לא אז תציג לו דף התחברות.
Ben ,אני יודע ..
פשוט חיפשתי מדריך לזה, כי לא כ"כ הסתדרתי..
רציתי לסדר אבל רציתי לטפל קודם בשגיאה .
מעבר לזה זה לא עבד ..